ttIsqlユーティリティには、トランザクションを管理するためのいくつかの組込みコマンドが用意されています。次に、これらのコマンドの概要を示します。
デフォルトでは、ttIsqlを起動すると、自動コミット機能が有効になります。このモードでは、データ・ストアに対するすべてのSQL操作が自動的にコミットされます。自動コミット機能を無効にするには、引数0を指定してttIsqlの組込みコマンドautocommit
を実行します。
自動コミットが無効になっている場合は、ttIsqlのcommit
コマンド、commitdurable
コマンド、またはrollback
コマンドを実行して、トランザクションを手動でコミットまたはロールバックする必要があります。commitdurable
コマンドを実行すると、データ・ストア障害が発生した場合でも、トランザクションの結果が保持されます。
isolation
コマンドを使用すると、現行の接続のトランザクション独立性プロパティを変更できます。独立性は、トランザクションの開始時にのみ変更できます。isolation
コマンドには、READ_COMMITTEDまたはSERIALIZABLEのいずれかを定数として指定できます。isolation
コマンドを引数を指定しないで実行すると、現在の分離レベルがレポートされます。
sqlquerytimeout
コマンドでは、SQL文のタイムアウト間隔を設定します。SQL文の実行時間がsqlquerytimeout
で設定した秒数を超えると、SQL文は実行されず、6111エラーが生成されます。詳細は、『Oracle TimesTen In-Memory Database Java開発者およびリファレンス・ガイド』のSQL文を実行する場合のタイムアウト値の設定に関する説明、および『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』のSQL文を実行する場合のタイムアウト値の設定に関する説明を参照してください。
次に、ttIsqlの組込みトランザクション管理コマンドの一般的な使用例を示します。
E:\>ttIsql
ttIsql (c) 1996-2006, Oracle. All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql.
All commands must end with a semicolon character.
Command> connect "DSN=MY_DSN";
Connection successful: DSN=MY_DSN;DataStore=E:\ds\MY_DSN;DRIVER=E:\WINNT\System32\
TTdv70.dll;
(Default setting AutoCommit=1)
Command> autocommit 0;
Command> CREATE TABLE LOOKUP (KEY INTEGER NOT NULL PRIMARY KEY, VALUE CHAR (64));
Command> commit;
Command> INSERT INTO LOOKUP VALUES (1, 'ABC');
1 row inserted.
Command> SELECT * FROM LOOKUP;
< 1, ABC >
1 row found.
Command> rollback;
Command> SELECT * FROM LOOKUP;
0 rows found.
Command> isolation;
isolation = READ_COMMITTED
Command> commitdurable;
Command> sqlquerytimeout 10;
Command> sqlquerytimeout;
Query timeout = 10 seconds
Command> disconnect;
Disconnecting...
Command> exit;
Done.
E:\>